package com.tiancheng.trade.settlement.service.settlement;

import com.baomidou.mybatisplus.extension.service.IService;
import com.tiancheng.trade.commom.core.data.PageInfo;
import com.tiancheng.trade.commom.core.data.Result;
import com.tiancheng.trade.settlement.model.settlement.SSettleLetters;
import com.tiancheng.trade.settlement.vo.settlement.admin.SSettleLettersDetailQueryVo;

import java.util.List;

/**
 * @Auther: Likailun
 * @Date: 11:12 2021/5/8
 * @Description: 对账函service
 */
public interface ISSettleLettersService extends IService<SSettleLetters> {

    /**
     * 对账函列表查询
     * @param SSettleLettersDetailQueryVo 查询参数
     * @return
     */
    PageInfo<SSettleLetters> queryLit(SSettleLettersDetailQueryVo SSettleLettersDetailQueryVo);

    /**
     * 生成对账函
     * @param SSettleLettersDetailQueryVo 生成条件
     */
    Result generateSettleLetters(SSettleLettersDetailQueryVo SSettleLettersDetailQueryVo);

    /**
     * 删除对账函
     * @param settleLettersCode 对账函编号
     */
    void deleteBySettleLettersCode(String settleLettersCode);
    /**
     * 删除对账函
     * @param cods 对账函编号
     */
    void deleteBySettleLettersCode(List<String> cods);


    boolean isExistGenerateTask();

    /**
     * 更新调整次数
     * @param settleLettersCode 对账函编号
     * @param adjustCount 新增调整次数
     */
    void updateAdjustCount(String settleLettersCode,Integer adjustCount);

}
